extern crate  backtrace;

fn main() {
   backtrace::trace(|frame|{
       let ip=frame.ip();
       let symbol_address = frame.symbol_address();

        println!("{:?}",symbol_address);

       backtrace::resolve(ip,|symbol|{
           if let Some(_name) = symbol.name(){
                //...   
                println!("{}",_name);
            }

            if let Some(_filename)=symbol.filename(){
                //...
                println!("{}",_filename.to_string_lossy());
            }
          
       });
       true //keep going to the next frame
   });
}
